package com.yonyougov.devops.cruxcisupport.role;

import com.yonyougov.devops.cruxcisupport.role.vo.LinkedRoleRespVo;
import com.yonyougov.devops.cruxcisupport.role.vo.NoLinkRoleVo;
import com.yonyougov.devops.cruxcisupport.role.vo.NotLinkedRoleByUserIdDto;
import com.yonyougov.devops.fwc.core.dao.BaseDao;

import java.math.BigInteger;
import java.util.List;

/**
 * t_role数据层
 */
public interface RoleDao extends BaseDao<RoleEntity, BigInteger> {
    //<!--用户自定义代码开始-->
    List<RoleEntity> getCurrentUserRoles(BigInteger userId);

    List<BigInteger> getCurrentUserRoleIds(BigInteger userId);

    int findNoLinkRoleByUserIdCount(NotLinkedRoleByUserIdDto pageParams);

    List<NoLinkRoleVo> findNoLinkRoleByUserId(NotLinkedRoleByUserIdDto pageParams);

    List<LinkedRoleRespVo> findLinkedRoleByUserId(BigInteger userId);

    //<!--用户自定义代码结束-->
}
